草庐IT

java - 置换函数的时间复杂度

全部标签

ruby - 如何在 ruby​​ 中按上次修改时间排序文件?

如何在ruby​​中获取最后修改时间顺序的文件?我能够粉碎我的键盘来实现这一点:file_info=Hash[*Dir.glob("*").collect{|file|[file,File.ctime(file)]}.flatten]sorted_file_info=file_info.sort_by{|k,v|v}sorted_files=sorted_file_info.collect{|file,created_at|file}但我想知道是否有更复杂的方法来做到这一点? 最佳答案 简单的怎么样:#Ifyouwant'modif

ruby-on-rails - Rails 上周日相对于任何日期时间

使用Rails3应用程序。给定一个日期时间,我需要生成前一个星期日的日期时间。如果DateTime是星期日,那么我希望那个星期日本身回来。下面是一些示例:November7,2011=>November6,2011November6,2011=>November6,2011November5,2011=>October30,2011有什么想法吗?我有点卡住了。 最佳答案 Rails有一个计算一周开始的便捷方法。irb(main):001:0>Date.today.beginning_of_week(:sunday)#=>Sun,16

ruby-on-rails - Rails ActiveSupport 时间解析?

Rails'ActiveSupportmoduleextendsthebuiltinrubyTimeclasswithanumberofmethods.值得注意的是,有一个to_formatted_s方法,它让您可以编写Time.now.to_formatted_s(:db)来获取数据库格式的字符串,而不必到处写丑陋的strftime格式字符串。我的问题是,有没有办法倒退?类似于Time.parse_formatted_s(:db)的东西,它会解析数据库格式的字符串,返回一个新的Time对象。这似乎是Rails应该提供的东西,但如果是的话,我找不到它。是我找不到,还是需要自己写?谢谢

ruby - 调用/应用 lambda 与函数调用 - Ruby 中的语法不同。为什么?

我对Ruby有点陌生,仍在努力理解一些语言设计原则。如果我做对了,Ruby中的lambda表达式调用必须使用方括号,而“常规”函数调用则使用“常规”/圆括号。语法不同是不是有什么特殊原因?或者,换句话说,(为什么)调用者应该知道他们是调用函数还是应用lambda表达式? 最佳答案 常规的Ruby方法调用使用()而不是用于block的花括号。如果您不喜欢[]来调用lambda,您始终可以使用call方法。例子:>>by_two=lambda{|x|x*2}#=>#>>by_two[5]#=>10>>by_two.call(5)#=>1

ruby - rspec:如何 stub 构造函数调用的实例方法?

classAdefinitialize@x=do_somethingenddefdo_something42endend如何在调用原始实现之前在rspec中stubdo_something(从而将42分配给@x)?当然,在不改变实现的情况下。 最佳答案 Here'sthecommitwhichaddsthefeaturetorspec-这是在2008年5月25日。有了这个你可以做A.any_instance.stub(do_something:23)但是,rspec的最新gem版本(1.1.11,2008年10月)没有这个补丁。Th

ruby - 使用月、日和年在 Rails 中创建日期时间

我有params[:month,:day,:year],我需要将它们转换成一个DateTime,我可以把它放在一个隐藏的输入中。在Rails3中执行此操作的最佳方法是什么? 最佳答案 你可以做到DateTime.new(params[:year],params[:month],params[:day]) 关于ruby-使用月、日和年在Rails中创建日期时间,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.c

ruby-on-rails - 将日期时间转换为月、日和年?

我好像找不到这个,我觉得应该很容易。在RubyonRails中,我如何采取:2010-06-1419:01:00UTC把它变成June14th,2010我不能只在View中使用助手吗? 最佳答案 我不知道June14th,2010但如果你想June14,2010引用howdoigetnameofthemonthinrubyonRails?或this就这样@date=Time.now@date.strftime("%B%d,%Y")后缀用在后面@date.strftime("%B#{@date.day.ordinalize},%Y")

ruby-on-rails - 在两个日期时间之间迭代,步长为一小时

我正在寻找一种有效的方法,在Ruby1.9.x/Rails3.2.x中,以一个小时的步长在两个DateTime对象之间进行迭代。('2013-01-01'.to_datetime..'2013-02-01'.to_datetime).step(1.hour)do|date|...end我知道这个问题是1.hour只是秒数,但我尝试将其转换为DateTime对象并将其用作步骤也不起作用.我查看了“BewareofRubySugar”。它在底部附近提到DateTime有一个直接的step方法。我通过在DateTime对象上运行methods来确认这一点,但是我在DateTime中找不到任何

ruby-on-rails - 将 Ruby 时间戳转换为 Epoch 中的秒数并返回

我的数据库中有一个存储为时间戳的字段,我需要以EPOCH时间的秒为单位输出它。 最佳答案 假设您的时间戳是一个RubyTime对象:putstime_stamp.strftime('%s')putstime_stamp.to_itimestamp=Time.at(628232400)如果它是一个DateTime对象,您可以使用strftime和strptime方法。 关于ruby-on-rails-将Ruby时间戳转换为Epoch中的秒数并返回,我们在StackOverflow上找到一个

ruby-on-rails - 如何在两个日期之间生成随机日期和时间?

不过不要忽略“日期和时间”部分。 最佳答案 Time.at((date2.to_f-date1.to_f)*rand+date1.to_f)您将获得一个介于两个给定日期时间之间的时间对象。 关于ruby-on-rails-如何在两个日期之间生成随机日期和时间?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/2683857/